<?php

// @formatter:off
/**
 * A helper file for your Eloquent Models
 * Copy the phpDocs from this file to the correct Model,
 * And remove them from this file, to prevent double declarations.
 *
 * @author Barry vd. Heuvel <barryvdh@gmail.com>
 */


namespace App\Models{
/**
 * App\Models\Authenticatable
 *
 * @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Client[] $clients
 * @property-read int|null $clients_count
 * @property-read mixed $created_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Permission[] $permissions
 * @property-read int|null $permissions_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Role[] $roles
 * @property-read int|null $roles_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Token[] $tokens
 * @property-read int|null $tokens_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable newQuery()
 * @method static \Illuminate\Database\Query\Builder|Authenticatable onlyTrashed()
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable permission($permissions)
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable query()
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable role($roles, $guard = null)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Query\Builder|Authenticatable withTrashed()
 * @method static \Illuminate\Database\Query\Builder|Authenticatable withoutTrashed()
 * @mixin \Eloquent
 */
	class Authenticatable extends \Eloquent implements \Illuminate\Contracts\Auth\Authenticatable, \Illuminate\Contracts\Auth\Access\Authorizable, \Illuminate\Contracts\Auth\CanResetPassword {}
}

namespace App\Models{
/**
 * App\Models\BaseModel
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class BaseModel extends \Eloquent {}
}

namespace App\Models{
/**
 * App\Models\Pivot
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Pivot newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Pivot newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Pivot query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class Pivot extends \Eloquent {}
}

namespace App\Models{
/**
 * App\Models\User
 *
 * @property int $id
 * @property string $name
 * @property string $email
 * @property \Illuminate\Support\Carbon|null $email_verified_at
 * @property string $password
 * @property string|null $remember_token
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Illuminate\Notifications\DatabaseNotificationCollection|\Illuminate\Notifications\DatabaseNotification[] $notifications
 * @property-read int|null $notifications_count
 * @method static \Database\Factories\UserFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|User newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|User newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|User query()
 * @method static \Illuminate\Database\Eloquent\Builder|User whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|User whereEmail($value)
 * @method static \Illuminate\Database\Eloquent\Builder|User whereEmailVerifiedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|User whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|User whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|User wherePassword($value)
 * @method static \Illuminate\Database\Eloquent\Builder|User whereRememberToken($value)
 * @method static \Illuminate\Database\Eloquent\Builder|User whereUpdatedAt($value)
 * @mixin \Eloquent
 */
	class User extends \Eloquent {}
}

namespace Modules\Admin\Entities{
/**
 * Modules\Admin\Entities\Admin
 *
 * @property int $id
 * @property string $username 管理员账号
 * @property string $name 姓名
 * @property string $password
 * @property bool $enable_status 是否可用
 * @property string $mobile 绑定手机号码
 * @property string|null $last_login_ip 最后一次登录IP
 * @property string|null $last_login_time 最后一次登录时间
 * @property \Illuminate\Support\Carbon|null $deleted_at
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Client[] $clients
 * @property-read int|null $clients_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Permission[] $permissions
 * @property-read int|null $permissions_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Role[] $roles
 * @property-read int|null $roles_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Token[] $tokens
 * @property-read int|null $tokens_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\Admin\Database\factories\AdminFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Admin newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable permission($permissions)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin query()
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable role($roles, $guard = null)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereDeletedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereEnableStatus($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereLastLoginIp($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereLastLoginTime($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereMobile($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin wherePassword($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereUpdatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Admin whereUsername($value)
 * @mixin \Eloquent
 */
	class Admin extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\CourseEvaluationSetting
 *
 * @property-read array $acad_year_term_name
 * @property-read mixed $created_at
 * @property-read array $new_course_evaluation_information_categories
 * @property-read array $new_course_evaluation_process
 * @property-read array $old_course_evaluation_information_categories
 * @property-read array $old_course_evaluation_process
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseEvaluationSetting newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|CourseEvaluationSetting newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|CourseEvaluationSetting query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class CourseEvaluationSetting extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\EvaluationCourse
 *
 * @property-read Department|null $department
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseDepartmentExpert[] $departmentExperts
 * @property-read int|null $department_experts_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseTeacher[] $evaluationCourseTeachers
 * @property-read int|null $evaluation_course_teachers_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseGroup[] $evaluationCoursesGroups
 * @property-read int|null $evaluation_courses_groups_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseExpert[] $experts
 * @property-read int|null $experts_count
 * @property-read mixed $created_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseGroupDepartmentExpert[] $groupDepartmentExperts
 * @property-read int|null $group_department_experts_count
 * @property-read Major|null $major
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\CourseEvaluation\Database\factories\EvaluationCourseFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourse newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourse newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourse query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class EvaluationCourse extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\EvaluationCourseDepartmentExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\CourseEvaluation\Database\factories\EvaluationCourseDepartmentExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseDepartmentExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseDepartmentExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseDepartmentExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class EvaluationCourseDepartmentExpert extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\EvaluationCourseExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\CourseEvaluation\Database\factories\EvaluationCourseExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class EvaluationCourseExpert extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\EvaluationCourseGroup
 *
 * @property-read \Modules\CourseEvaluation\Entities\EvaluationCourse|null $evaluationCourse
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseDepartmentExpert[] $evaluationCourseDepartmentExperts
 * @property-read int|null $evaluation_course_department_experts_count
 * @property-read mixed $created_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseGroupDepartmentExpert[] $groupDepartmentExperts
 * @property-read int|null $group_department_experts_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\CourseEvaluation\Entities\EvaluationCourseGroupExpert[] $groupExperts
 * @property-read int|null $group_experts_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\CourseEvaluation\Database\factories\EvaluationCourseGroupFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroup newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroup newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroup query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class EvaluationCourseGroup extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\EvaluationCourseGroupDepartmentExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\CourseEvaluation\Database\factories\EvaluationCourseGroupDepartmentExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroupDepartmentExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroupDepartmentExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroupDepartmentExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class EvaluationCourseGroupDepartmentExpert extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\EvaluationCourseGroupExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\CourseEvaluation\Database\factories\EvaluationCourseGroupExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroupExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroupExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseGroupExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class EvaluationCourseGroupExpert extends \Eloquent {}
}

namespace Modules\CourseEvaluation\Entities{
/**
 * Modules\CourseEvaluation\Entities\EvaluationCourseTeacher
 *
 * @property-read \Modules\CourseEvaluation\Entities\EvaluationCourseGroup|null $EvaluationCourseGroup
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\CourseEvaluation\Database\factories\EvaluationCourseTeacherFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseTeacher newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseTeacher newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|EvaluationCourseTeacher query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class EvaluationCourseTeacher extends \Eloquent {}
}

namespace Modules\Course\Entities{
/**
 * Modules\Course\Entities\Course
 *
 * @property int $id
 * @property string $code 课程代码
 * @property string $name 课程名称
 * @property int $major_id 所属专业
 * @property int $department_id 部门id
 * @property bool $is_online 是否线上课程
 * @property bool $is_team 是否团队课程
 * @property string|null $nature 课程性质
 * @property string|null $intro 课程简介
 * @property string|null $content 课程详情
 * @property \Illuminate\Support\Carbon|null $deleted_at
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Course\Entities\CourseTeacher[] $cts
 * @property-read int|null $cts_count
 * @property-read Department|null $department
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Course\Entities\CourseTeacher[] $groupTeachers
 * @property-read int|null $group_teachers_count
 * @property-read Major|null $major
 * @property-read \Illuminate\Database\Eloquent\Collection|Teacher[] $teachers
 * @property-read int|null $teachers_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\Course\Database\factories\CourseFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Course newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Course newQuery()
 * @method static \Illuminate\Database\Query\Builder|Course onlyTrashed()
 * @method static \Illuminate\Database\Eloquent\Builder|Course query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereCode($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereContent($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereDeletedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereDepartmentId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereIntro($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereIsOnline($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereIsTeam($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereMajorId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereNature($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Course whereUpdatedAt($value)
 * @method static \Illuminate\Database\Query\Builder|Course withTrashed()
 * @method static \Illuminate\Database\Query\Builder|Course withoutTrashed()
 * @mixin \Eloquent
 */
	class Course extends \Eloquent {}
}

namespace Modules\Course\Entities{
/**
 * Modules\Course\Entities\CourseCenterExpert
 *
 * @property int $id
 * @property int $teacher_id
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\Course\Database\factories\CourseCenterExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseCenterExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|CourseCenterExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|CourseCenterExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseCenterExpert whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseCenterExpert whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseCenterExpert whereTeacherId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseCenterExpert whereUpdatedAt($value)
 * @mixin \Eloquent
 */
	class CourseCenterExpert extends \Eloquent {}
}

namespace Modules\Course\Entities{
/**
 * Modules\Course\Entities\CourseTeacher
 *
 * @property int $id
 * @property int $course_id
 * @property int $teacher_id
 * @property string|null $group_id
 * @property-read mixed $created_at
 * @property-read mixed $teacher_ids
 * @property-read Teacher|null $teacher
 * @property-read \Illuminate\Database\Eloquent\Collection|Teacher[] $teachers
 * @property-read int|null $teachers_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseTeacher newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|CourseTeacher newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|CourseTeacher query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseTeacher whereCourseId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseTeacher whereGroupId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseTeacher whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|CourseTeacher whereTeacherId($value)
 * @mixin \Eloquent
 */
	class CourseTeacher extends \Eloquent {}
}

namespace Modules\NewEvaluationCourse\Entities{
/**
 * Modules\NewEvaluationCourse\Entities\NewEvaluationCourse
 *
 * @property-read Department|null $department
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseDepartmentExpert[] $departmentExperts
 * @property-read int|null $department_experts_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseTeacher[] $evaluationCourseTeachers
 * @property-read int|null $evaluation_course_teachers_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroup[] $evaluationCoursesGroups
 * @property-read int|null $evaluation_courses_groups_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseExpert[] $experts
 * @property-read int|null $experts_count
 * @property-read mixed $created_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroupDepartmentExpert[] $groupDepartmentExperts
 * @property-read int|null $group_department_experts_count
 * @property-read Major|null $major
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\NewEvaluationCourse\Database\factories\NewEvaluationCourseFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourse newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourse newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourse query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class NewEvaluationCourse extends \Eloquent {}
}

namespace Modules\NewEvaluationCourse\Entities{
/**
 * Modules\NewEvaluationCourse\Entities\NewEvaluationCourseDepartmentExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\NewEvaluationCourse\Database\factories\NewEvaluationCourseDepartmentExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseDepartmentExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseDepartmentExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseDepartmentExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class NewEvaluationCourseDepartmentExpert extends \Eloquent {}
}

namespace Modules\NewEvaluationCourse\Entities{
/**
 * Modules\NewEvaluationCourse\Entities\NewEvaluationCourseExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\NewEvaluationCourse\Database\factories\NewEvaluationCourseExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class NewEvaluationCourseExpert extends \Eloquent {}
}

namespace Modules\NewEvaluationCourse\Entities{
/**
 * Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroup
 *
 * @property-read \Modules\NewEvaluationCourse\Entities\NewEvaluationCourse|null $evaluationCourse
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseDepartmentExpert[] $evaluationCourseDepartmentExperts
 * @property-read int|null $evaluation_course_department_experts_count
 * @property-read mixed $created_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroupDepartmentExpert[] $groupDepartmentExperts
 * @property-read int|null $group_department_experts_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroupExpert[] $groupExperts
 * @property-read int|null $group_experts_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\NewEvaluationCourse\Database\factories\NewEvaluationCourseGroupFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroup newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroup newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroup query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class NewEvaluationCourseGroup extends \Eloquent {}
}

namespace Modules\NewEvaluationCourse\Entities{
/**
 * Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroupDepartmentExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\NewEvaluationCourse\Database\factories\NewEvaluationCourseGroupDepartmentExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroupDepartmentExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroupDepartmentExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroupDepartmentExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class NewEvaluationCourseGroupDepartmentExpert extends \Eloquent {}
}

namespace Modules\NewEvaluationCourse\Entities{
/**
 * Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroupExpert
 *
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\NewEvaluationCourse\Database\factories\NewEvaluationCourseGroupExpertFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroupExpert newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroupExpert newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseGroupExpert query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class NewEvaluationCourseGroupExpert extends \Eloquent {}
}

namespace Modules\NewEvaluationCourse\Entities{
/**
 * Modules\NewEvaluationCourse\Entities\NewEvaluationCourseTeacher
 *
 * @property-read \Modules\NewEvaluationCourse\Entities\NewEvaluationCourseGroup|null $EvaluationCourseGroup
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\NewEvaluationCourse\Database\factories\NewEvaluationCourseTeacherFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseTeacher newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseTeacher newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|NewEvaluationCourseTeacher query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @mixin \Eloquent
 */
	class NewEvaluationCourseTeacher extends \Eloquent {}
}

namespace Modules\Permission\Entities{
/**
 * Modules\Permission\Entities\Permission
 *
 * @property int $id
 * @property string $name
 * @property string $guard_name
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Permission[] $permissions
 * @property-read int|null $permissions_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Role[] $roles
 * @property-read int|null $roles_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\User[] $users
 * @property-read int|null $users_count
 * @method static \Modules\Permission\Database\factories\PermissionFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|Permission newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Permission newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Permission permission($permissions)
 * @method static \Illuminate\Database\Eloquent\Builder|Permission query()
 * @method static \Illuminate\Database\Eloquent\Builder|Permission role($roles, $guard = null)
 * @method static \Illuminate\Database\Eloquent\Builder|Permission whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Permission whereGuardName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Permission whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Permission whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Permission whereUpdatedAt($value)
 * @mixin \Eloquent
 */
	class Permission extends \Eloquent {}
}

namespace Modules\Permission\Entities{
/**
 * Modules\Permission\Entities\Role
 *
 * @property int $id
 * @property string $name
 * @property string $guard_name
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Permission[] $permissions
 * @property-read int|null $permissions_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\User[] $users
 * @property-read int|null $users_count
 * @method static \Modules\Permission\Database\factories\RoleFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|Role newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Role newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Role permission($permissions)
 * @method static \Illuminate\Database\Eloquent\Builder|Role query()
 * @method static \Illuminate\Database\Eloquent\Builder|Role whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Role whereGuardName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Role whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Role whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Role whereUpdatedAt($value)
 * @mixin \Eloquent
 */
	class Role extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\Department
 *
 * @property int $id
 * @property string $name 部门名称
 * @property string|null $abbreviated_name 简称
 * @property string|null $english_name 英文名
 * @property int|null $department_category_id 院系类别id
 * @property int|null $parent_id 上级id
 * @property int $level 深度
 * @property int|null $_lft
 * @property int|null $_rgt
 * @property int $sort 排序
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Modules\Personnel\Entities\DepartmentCategory|null $category
 * @property-read \Kalnoy\Nestedset\Collection|Department[] $children
 * @property-read int|null $children_count
 * @property-read \Illuminate\Database\Eloquent\Collection|Course[] $courses
 * @property-read int|null $courses_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Personnel\Entities\DepartmentTeacherIdentity[] $identityRoles
 * @property-read int|null $identity_roles_count
 * @property-read Department|null $parent
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Personnel\Entities\Teacher[] $principals
 * @property-read int|null $principals_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Personnel\Entities\Teacher[] $teachers
 * @property-read int|null $teachers_count
 * @method static \Kalnoy\Nestedset\Collection|static[] all($columns = ['*'])
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department ancestorsAndSelf($id, array $columns = [])
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department ancestorsOf($id, array $columns = [])
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department applyNestedSetScope(?string $table = null)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department countErrors()
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel createdAtAfter($date)
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel createdAtBefore($date)
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel createdAtBetween($start, $end)
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel createdAtOfDay($data)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department d()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department defaultOrder(string $dir = 'asc')
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department descendantsAndSelf($id, array $columns = [])
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department descendantsOf($id, array $columns = [], $andSelf = false)
 * @method static \Modules\Personnel\Database\factories\DepartmentFactory factory(...$parameters)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department fixSubtree($root)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department fixTree($root = null)
 * @method static \Kalnoy\Nestedset\Collection|static[] get($columns = ['*'])
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department getNodeData($id, $required = false)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department getPlainNodeData($id, $required = false)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department getTotalErrors()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department hasChildren()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department hasParent()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department isBroken()
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel lastLoginTimeAfter($date)
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel lastLoginTimeBefore($date)
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department leaves(array $columns = [])
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department makeGap(int $cut, int $height)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department moveNode($key, $position)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department newModelQuery()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department newQuery()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department orWhereAncestorOf(bool $id, bool $andSelf = false)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department orWhereDescendantOf($id)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department orWhereNodeBetween($values)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department orWhereNotDescendantOf($id)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department query()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department rebuildSubtree($root, array $data, $delete = false)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department rebuildTree(array $data, $delete = false, $root = null)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department reversed()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department root(array $columns = [])
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel updatedAtAfter($date)
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel updatedAtBefore($date)
 * @method static \Kalnoy\Nestedset\QueryBuilder|BaseModel updatedAtBetween($start, $end)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereAbbreviatedName($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereAncestorOf($id, $andSelf = false, $boolean = 'and')
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereAncestorOrSelf($id)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereCreatedAt($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereDepartmentCategoryId($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereDescendantOf($id, $boolean = 'and', $not = false, $andSelf = false)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereDescendantOrSelf(string $id, string $boolean = 'and', string $not = false)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereEnglishName($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereId($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereIsAfter($id, $boolean = 'and')
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereIsBefore($id, $boolean = 'and')
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereIsLeaf()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereIsRoot()
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereLevel($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereLft($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereName($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereNodeBetween($values, $boolean = 'and', $not = false)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereNotDescendantOf($id)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereParentId($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereRgt($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereSort($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department whereUpdatedAt($value)
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department withDepth(string $as = 'depth')
 * @method static \Kalnoy\Nestedset\QueryBuilder|Department withoutRoot()
 * @mixin \Eloquent
 */
	class Department extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\DepartmentCategory
 *
 * @property int $id
 * @property string $name 院系类别名称
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Kalnoy\Nestedset\Collection|\Modules\Personnel\Entities\Department[] $departments
 * @property-read int|null $departments_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\Personnel\Database\factories\DepartmentCategoryFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentCategory newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentCategory newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentCategory query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentCategory whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentCategory whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentCategory whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentCategory whereUpdatedAt($value)
 * @mixin \Eloquent
 */
	class DepartmentCategory extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\DepartmentTeacherIdentity
 *
 * @property-read \Modules\Personnel\Entities\Department|null $department
 * @property-read \Modules\Personnel\Entities\Teacher|null $teacher
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentTeacherIdentity newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentTeacherIdentity newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|DepartmentTeacherIdentity query()
 * @mixin \Eloquent
 */
	class DepartmentTeacherIdentity extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\Ethnic
 *
 * @property int $id
 * @property string $name
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Ethnic newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Ethnic newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Ethnic query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Ethnic whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Ethnic whereName($value)
 * @mixin \Eloquent
 */
	class Ethnic extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\JobTitle
 *
 * @property int $id
 * @property string $name 职务名称
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Modules\Personnel\Entities\Teacher|null $teachers
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\Personnel\Database\factories\JobTitleFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|JobTitle newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|JobTitle newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|JobTitle query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|JobTitle whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|JobTitle whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|JobTitle whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|JobTitle whereUpdatedAt($value)
 * @mixin \Eloquent
 */
	class JobTitle extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\Major
 *
 * @property int $id
 * @property string $name 专业名称
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Personnel\Entities\Teacher[] $teachers
 * @property-read int|null $teachers_count
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Modules\Personnel\Database\factories\MajorFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Major newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Major newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Major query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Major whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Major whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Major whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Major whereUpdatedAt($value)
 * @mixin \Eloquent
 */
	class Major extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\PoliticCountenance
 *
 * @property int $id
 * @property string $name
 * @property-read mixed $created_at
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|PoliticCountenance newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|PoliticCountenance newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|PoliticCountenance query()
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|PoliticCountenance whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|PoliticCountenance whereName($value)
 * @mixin \Eloquent
 */
	class PoliticCountenance extends \Eloquent {}
}

namespace Modules\Personnel\Entities{
/**
 * Modules\Personnel\Entities\Teacher
 *
 * @property int $id
 * @property string|null $employee_no 工号
 * @property string $name 姓名
 * @property string $mobile 联系电话
 * @property string|null $email 邮箱
 * @property string|null $job_title_id 职务id
 * @property bool $is_external true 校外 false 校内
 * @property string|null $school_name 所属学校 针对校外专家
 * @property int $status 0 在职  1 编外 2 退休 3离职
 * @property bool $enable_status 账号状态
 * @property string $password
 * @property string|null $identity_number 身份证
 * @property string|null $birthday 出生日期
 * @property int $sex 性别
 * @property int|null $ethnic_id 民族表id
 * @property string|null $politic_countenance_id 政治面貌id
 * @property string|null $hometown 籍贯
 * @property string|null $retreat_at 退离时间
 * @property \Illuminate\Support\Carbon|null $deleted_at
 * @property \Illuminate\Support\Carbon|null $created_at
 * @property \Illuminate\Support\Carbon|null $updated_at
 * @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Client[] $clients
 * @property-read int|null $clients_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Course\Entities\Course[] $course
 * @property-read int|null $course_count
 * @property-read \Modules\Course\Entities\CourseCenterExpert|null $courseCenterExpert
 * @property-read \Kalnoy\Nestedset\Collection|\Modules\Personnel\Entities\Department[] $departmentExpert
 * @property-read int|null $department_expert_count
 * @property-read \Modules\Personnel\Entities\Department $departmentPrincipal
 * @property-read \Kalnoy\Nestedset\Collection|\Modules\Personnel\Entities\Department[] $departmentTeacher
 * @property-read int|null $department_teacher_count
 * @property-read \Kalnoy\Nestedset\Collection|\Modules\Personnel\Entities\Department[] $departments
 * @property-read int|null $departments_count
 * @property-read \Modules\Personnel\Entities\Ethnic|null $ethnic
 * @property-read mixed $age
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Personnel\Entities\DepartmentTeacherIdentity[] $identitys
 * @property-read int|null $identitys_count
 * @property-read \Modules\Personnel\Entities\JobTitle|null $jobTitle
 * @property-read \Illuminate\Database\Eloquent\Collection|\Modules\Personnel\Entities\Major[] $majors
 * @property-read int|null $majors_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Permission[] $permissions
 * @property-read int|null $permissions_count
 * @property-read \Modules\Personnel\Entities\PoliticCountenance|null $politicCountenance
 * @property-read \Illuminate\Database\Eloquent\Collection|\Spatie\Permission\Models\Role[] $roles
 * @property-read int|null $roles_count
 * @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Token[] $tokens
 * @property-read int|null $tokens_count
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher centerAdmissionReview(bool $ok)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher centerCourseEvaluation(bool $ok)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher courseCenterExpert(bool $ok)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel createdAtOfDay($data)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher departmentExpertIdentity(bool $ok)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher departmentPrincipalIdentity(bool $ok)
 * @method static \Modules\Personnel\Database\factories\TeacherFactory factory(...$parameters)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher hasNotWhereDepartmentIdentity($identity)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher hasPrincipal()
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher hasWhereDepartmentIdentity($identity)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel lastLoginTimeBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher newModelQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher newQuery()
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable permission($permissions)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher query()
 * @method static \Illuminate\Database\Eloquent\Builder|Authenticatable role($roles, $guard = null)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtAfter($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBefore($date)
 * @method static \Illuminate\Database\Eloquent\Builder|BaseModel updatedAtBetween($start, $end)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereBirthday($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereCreatedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereDeletedAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereEmail($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereEmployeeNo($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereEnableStatus($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereEthnicId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereHometown($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereIdentityNumber($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereIsExternal($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereJobTitleId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereMobile($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher wherePassword($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher wherePoliticCountenanceId($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereRetreatAt($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereSchoolName($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereSex($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereStatus($value)
 * @method static \Illuminate\Database\Eloquent\Builder|Teacher whereUpdatedAt($value)
 */
	class Teacher extends \Eloquent {}
}

